Proteggersi dagli attacchi di directory traversal è fondamentale per garantire la sicurezza di un sito web. Gli attacchi di directory traversal, noti anche come attacchi “path traversal” o “directory climbing”, permettono a un malintenzionato di accedere a file e directory che si trovano al di fuori della directory web root. Uno dei metodi più comuni per proteggere un sito da questi attacchi è utilizzare il file `.htaccess`.
Il file `.htaccess` è un file di configurazione utilizzato da server web come Apache per amministrare le impostazioni a livello di directory. Ecco alcuni esempi di come utilizzare questo file per proteggere il vostro sito web dagli attacchi di directory traversal.
Questo impedisce agli utenti di vedere l’elenco dei file presenti nelle directory, riducendo così il rischio di attacchi:
```
Options -Indexes
```
È possibile utilizzare mod\_rewrite per creare regole che blocchino tentativi di directory traversal. Il seguente codice blocca qualsiasi richiesta contenente “../” per evitare che un utente acceda a directory superiori:
```
RewriteEngine On
RewriteCond %{REQUEST_URI} \.\. [NC]
RewriteRule .* – [F]
```
Un altro metodo è impedire l’accesso a file sensibili come `.htaccess` e `.htpasswd`:
```
```
Questo comando assicura che i file la cui parte iniziale del nome è “.ht” non siano accessibili da utenti esterni.
Limitare i metodi HTTP utilizzabili può ridurre l’esposizione agli attacchi. Ad esempio, permettere solo i metodi GET e POST può essere utile:
```
```
Un’altra strategia è assicurarsi che tutti gli input utenti siano validati correttamente per prevenire l’invio di comandi nocivi.
```
```
Assicurati che i giusti header HTTP siano configurati per aumentare il livello di sicurezza:
```
Header set X-Content-Type-Options “nosniff“
Header set X-Frame-Options “SAMEORIGIN“
```
1. Apache HTTP Server Documentation. (n.d.). Configuration Files. Retrieved from [Apache HTTP Server official documentation](https://httpd.apache.org/docs/current/configuring.html)
2. OWASP Cheat Sheet Series. (n.d.). Input Validation Cheat Sheet. Retrieved from [OWASP official site](https://cheatsheetseries.owasp.org/cheatsheets/Input_Validation_Cheat_Sheet.html)
3. Sanitize User Inputs: Path Traversal Vulnerability. (n.d.). Retrieved from [Acunetix official site](https://www.acunetix.com/websitesecurity/path-traversal/)
Questi passaggi, accompagnati dai link alle fonti autorevoli, offrono una panoramica completa su come proteggere il proprio sito da attacchi di directory traversal utilizzando il file `.htaccess`, rafforzando così la sicurezza del server web.